home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / gtk-2.0 / gdk / gdkx.h < prev   
Encoding:
C/C++ Source or Header  |  2006-04-25  |  8.8 KB  |  211 lines

  1. /* GDK - The GIMP Drawing Kit
  2.  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  3.  *
  4.  * This library is free software; you can redistribute it and/or
  5.  * modify it under the terms of the GNU Lesser General Public
  6.  * License as published by the Free Software Foundation; either
  7.  * version 2 of the License, or (at your option) any later version.
  8.  *
  9.  * This library is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.  * Lesser General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU Lesser General Public
  15.  * License along with this library; if not, write to the
  16.  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17.  * Boston, MA 02111-1307, USA.
  18.  */
  19.  
  20. /*
  21.  * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
  22.  * file for a list of people on the GTK+ Team.  See the ChangeLog
  23.  * files for a list of changes.  These files are distributed with
  24.  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
  25.  */
  26.  
  27. #ifndef __GDK_X_H__
  28. #define __GDK_X_H__
  29.  
  30. #include <gdk/gdkprivate.h>
  31. #include <gdk/gdkcursor.h>
  32.  
  33. #include <X11/Xlib.h>
  34. #include <X11/Xutil.h>
  35.  
  36. G_BEGIN_DECLS
  37.  
  38. #ifndef GDK_MULTIHEAD_SAFE
  39. extern Display          *gdk_display;
  40. #endif
  41.  
  42. Display *gdk_x11_drawable_get_xdisplay    (GdkDrawable *drawable);
  43. XID      gdk_x11_drawable_get_xid         (GdkDrawable *drawable);
  44. Display *gdk_x11_image_get_xdisplay       (GdkImage    *image);
  45. XImage  *gdk_x11_image_get_ximage         (GdkImage    *image);
  46. Display *gdk_x11_colormap_get_xdisplay    (GdkColormap *colormap);
  47. Colormap gdk_x11_colormap_get_xcolormap   (GdkColormap *colormap);
  48. Display *gdk_x11_cursor_get_xdisplay      (GdkCursor   *cursor);
  49. Cursor   gdk_x11_cursor_get_xcursor       (GdkCursor   *cursor);
  50. Display *gdk_x11_display_get_xdisplay     (GdkDisplay  *display);
  51. Visual * gdk_x11_visual_get_xvisual       (GdkVisual   *visual);
  52. Display *gdk_x11_gc_get_xdisplay          (GdkGC       *gc);
  53. GC       gdk_x11_gc_get_xgc               (GdkGC       *gc);
  54. Screen * gdk_x11_screen_get_xscreen       (GdkScreen   *screen);
  55. int      gdk_x11_screen_get_screen_number (GdkScreen   *screen);
  56. void     gdk_x11_window_set_user_time     (GdkWindow   *window,
  57.                        guint32      timestamp);
  58. void     gdk_x11_window_move_to_current_desktop (GdkWindow   *window);
  59.  
  60. const char* gdk_x11_screen_get_window_manager_name (GdkScreen *screen);
  61.  
  62. #ifndef GDK_MULTIHEAD_SAFE
  63. Window   gdk_x11_get_default_root_xwindow (void);
  64. Display *gdk_x11_get_default_xdisplay     (void);
  65. gint     gdk_x11_get_default_screen       (void);
  66. #endif
  67.  
  68. #define GDK_COLORMAP_XDISPLAY(cmap)   (gdk_x11_colormap_get_xdisplay (cmap))
  69. #define GDK_COLORMAP_XCOLORMAP(cmap)  (gdk_x11_colormap_get_xcolormap (cmap))
  70. #define GDK_CURSOR_XDISPLAY(cursor)   (gdk_x11_cursor_get_xdisplay (cursor))
  71. #define GDK_CURSOR_XCURSOR(cursor)    (gdk_x11_cursor_get_xcursor (cursor))
  72. #define GDK_IMAGE_XDISPLAY(image)     (gdk_x11_image_get_xdisplay (image))
  73. #define GDK_IMAGE_XIMAGE(image)       (gdk_x11_image_get_ximage (image))
  74.  
  75. #ifndef GDK_MULTIHEAD_SAFE
  76. #define GDK_DISPLAY()                 gdk_display
  77. #endif
  78.  
  79. #ifdef GDK_COMPILATION
  80.  
  81. #include "gdkprivate-x11.h"
  82. #include "gdkscreen-x11.h"
  83.  
  84. #define GDK_DISPLAY_XDISPLAY(display) (GDK_DISPLAY_X11(display)->xdisplay)
  85.  
  86. #define GDK_WINDOW_XDISPLAY(win)      (GDK_SCREEN_X11 (GDK_WINDOW_SCREEN (win))->xdisplay)
  87. #define GDK_WINDOW_XID(win)           (GDK_DRAWABLE_IMPL_X11(((GdkWindowObject *)win)->impl)->xid)
  88. #define GDK_PIXMAP_XDISPLAY(pix)      (GDK_SCREEN_X11 (GDK_PIXMAP_SCREEN (pix))->xdisplay)
  89. #define GDK_PIXMAP_XID(pix)           (GDK_DRAWABLE_IMPL_X11(((GdkPixmapObject *)pix)->impl)->xid)
  90. #define GDK_DRAWABLE_XDISPLAY(win)    (GDK_IS_WINDOW (win) ? GDK_WINDOW_XDISPLAY (win) : GDK_PIXMAP_XDISPLAY (win))
  91. #define GDK_DRAWABLE_XID(win)         (GDK_IS_WINDOW (win) ? GDK_WINDOW_XID (win) : GDK_PIXMAP_XID (win))
  92. #define GDK_GC_XDISPLAY(gc)           (GDK_SCREEN_XDISPLAY(GDK_GC_X11(gc)->screen))
  93. #define GDK_GC_XGC(gc)              (GDK_GC_X11(gc)->xgc)
  94. #define GDK_SCREEN_XDISPLAY(screen)   (GDK_SCREEN_X11 (screen)->xdisplay)
  95. #define GDK_SCREEN_XSCREEN(screen)    (GDK_SCREEN_X11 (screen)->xscreen)
  96. #define GDK_SCREEN_XNUMBER(screen)    (GDK_SCREEN_X11 (screen)->screen_num) 
  97. #define GDK_VISUAL_XVISUAL(vis)       (((GdkVisualPrivate *) vis)->xvisual)
  98. #define GDK_GC_GET_XGC(gc)          (GDK_GC_X11(gc)->dirty_mask ? _gdk_x11_gc_flush (gc) : ((GdkGCX11 *)(gc))->xgc)
  99. #define GDK_WINDOW_XWINDOW          GDK_DRAWABLE_XID
  100.  
  101. #else /* GDK_COMPILATION */
  102.  
  103. #ifndef GDK_MULTIHEAD_SAFE
  104. #define GDK_ROOT_WINDOW()             (gdk_x11_get_default_root_xwindow ())
  105. #endif
  106.  
  107. #define GDK_DISPLAY_XDISPLAY(display) (gdk_x11_display_get_xdisplay (display))
  108.  
  109. #define GDK_WINDOW_XDISPLAY(win)      (gdk_x11_drawable_get_xdisplay (((GdkWindowObject *)win)->impl))
  110. #define GDK_WINDOW_XID(win)           (gdk_x11_drawable_get_xid (win))
  111. #define GDK_WINDOW_XWINDOW(win)       (gdk_x11_drawable_get_xid (win))
  112. #define GDK_PIXMAP_XDISPLAY(win)      (gdk_x11_drawable_get_xdisplay (((GdkPixmapObject *)win)->impl))
  113. #define GDK_PIXMAP_XID(win)           (gdk_x11_drawable_get_xid (win))
  114. #define GDK_DRAWABLE_XDISPLAY(win)    (gdk_x11_drawable_get_xdisplay (win))
  115. #define GDK_DRAWABLE_XID(win)         (gdk_x11_drawable_get_xid (win))
  116. #define GDK_GC_XDISPLAY(gc)           (gdk_x11_gc_get_xdisplay (gc))
  117. #define GDK_GC_XGC(gc)                (gdk_x11_gc_get_xgc (gc))
  118. #define GDK_SCREEN_XDISPLAY(screen)   (gdk_x11_display_get_xdisplay (gdk_screen_get_display (screen)))
  119. #define GDK_SCREEN_XSCREEN(screen)    (gdk_x11_screen_get_xscreen (screen))
  120. #define GDK_SCREEN_XNUMBER(screen)    (gdk_x11_screen_get_screen_number (screen))
  121. #define GDK_VISUAL_XVISUAL(visual)    (gdk_x11_visual_get_xvisual (visual))
  122.  
  123. #endif /* GDK_COMPILATION */
  124.  
  125. GdkVisual* gdk_x11_screen_lookup_visual (GdkScreen *screen,
  126.                      VisualID   xvisualid);
  127. #ifndef GDK_MULTIHEAD_SAFE
  128. GdkVisual* gdkx_visual_get            (VisualID   xvisualid);
  129. #endif
  130.  
  131. #ifdef GDK_ENABLE_BROKEN
  132. /* XXX: An X Colormap is useless unless we also have the visual. */
  133. GdkColormap* gdkx_colormap_get (Colormap xcolormap);
  134. #endif
  135.  
  136. GdkColormap *gdk_x11_colormap_foreign_new (GdkVisual *visual,
  137.                        Colormap   xcolormap);
  138.  
  139.      /* Return the Gdk* for a particular XID */
  140. gpointer      gdk_xid_table_lookup_for_display (GdkDisplay *display,
  141.                         XID         xid);
  142. guint32       gdk_x11_get_server_time  (GdkWindow       *window);
  143. guint32       gdk_x11_display_get_user_time (GdkDisplay *display);
  144.  
  145. void          gdk_x11_display_set_cursor_theme (GdkDisplay  *display,
  146.                         const gchar *theme,
  147.                         const gint   size);
  148.  
  149. /* returns TRUE if we support the given WM spec feature */
  150. gboolean gdk_x11_screen_supports_net_wm_hint (GdkScreen *screen,
  151.                           GdkAtom    property);
  152.  
  153. #ifndef GDK_MULTIHEAD_SAFE
  154. gpointer      gdk_xid_table_lookup   (XID              xid);
  155. gboolean      gdk_net_wm_supports    (GdkAtom    property);
  156. void          gdk_x11_grab_server    (void);
  157. void          gdk_x11_ungrab_server  (void);
  158. #endif
  159.  
  160. GdkDisplay   *gdk_x11_lookup_xdisplay (Display *xdisplay);
  161.  
  162.  
  163. /* Functions to get the X Atom equivalent to the GdkAtom */
  164. Atom                  gdk_x11_atom_to_xatom_for_display (GdkDisplay  *display,
  165.                              GdkAtom      atom);
  166. GdkAtom              gdk_x11_xatom_to_atom_for_display (GdkDisplay  *display,
  167.                              Atom          xatom);
  168. Atom              gdk_x11_get_xatom_by_name_for_display (GdkDisplay  *display,
  169.                                  const gchar *atom_name);
  170. G_CONST_RETURN gchar *gdk_x11_get_xatom_name_for_display (GdkDisplay  *display,
  171.                               Atom         xatom);
  172. #ifndef GDK_MULTIHEAD_SAFE
  173. Atom                  gdk_x11_atom_to_xatom     (GdkAtom      atom);
  174. GdkAtom               gdk_x11_xatom_to_atom     (Atom         xatom);
  175. Atom                  gdk_x11_get_xatom_by_name (const gchar *atom_name);
  176. G_CONST_RETURN gchar *gdk_x11_get_xatom_name    (Atom         xatom);
  177. #endif
  178.  
  179. void        gdk_x11_display_grab          (GdkDisplay *display);
  180. void        gdk_x11_display_ungrab          (GdkDisplay *display);
  181. void        gdk_x11_register_standard_event_type (GdkDisplay *display,
  182.                           gint        event_base,
  183.                           gint        n_events);
  184.  
  185. #if !defined(GDK_DISABLE_DEPRECATED) || defined(GDK_COMPILATION)
  186.  
  187. gpointer             gdk_x11_font_get_xfont    (GdkFont *font);
  188. #define GDK_FONT_XFONT(font)          (gdk_x11_font_get_xfont (font))
  189.  
  190. #define gdk_font_lookup_for_display(display, xid) ((GdkFont*) gdk_xid_table_lookup_for_display (display, xid))
  191.  
  192. #endif /* !GDK_DISABLE_DEPRECATED || GDK_COMPILATION */
  193.  
  194. #ifndef GDK_DISABLE_DEPRECATED
  195.  
  196. Display *            gdk_x11_font_get_xdisplay (GdkFont *font);
  197. G_CONST_RETURN char *gdk_x11_font_get_name     (GdkFont *font);
  198.  
  199. #define GDK_FONT_XDISPLAY(font)       (gdk_x11_font_get_xdisplay (font))
  200.  
  201. #ifndef GDK_MULTIHEAD_SAFE
  202.  
  203. #define gdk_font_lookup(xid)       ((GdkFont*) gdk_xid_table_lookup (xid))
  204.  
  205. #endif /* GDK_MULTIHEAD_SAFE */
  206. #endif /* GDK_DISABLE_DEPRECATED */
  207.  
  208. G_END_DECLS
  209.  
  210. #endif /* __GDK_X_H__ */
  211.